package pers.xiaojun.boot.module.system.dao.mapper.dept;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import pers.xiaojun.boot.module.system.dao.entity.dept.PostDO;

import java.util.List;

/**
 * 岗位数据访问层
 *
 * @author xiaojun
 * @since 2025-11-02
 */
@Mapper
public interface PostMapper extends BaseMapper<PostDO> {

    /**
     * 根据岗位名称获取岗位信息
     *
     * @param postName 岗位名称
     * @return 岗位
     */
    default PostDO selectByName(String postName) {
        return selectOne(new LambdaQueryWrapper<PostDO>()
                .eq(PostDO::getName, postName)
        );
    }

    /**
     * 根据岗位代码获取岗位信息
     *
     * @param postCode 岗位代码
     * @return 岗位
     */
    default PostDO selectByCode(String postCode) {
        return selectOne(new LambdaQueryWrapper<PostDO>()
                .eq(PostDO::getCode, postCode)
        );
    }

}
